var new_largeur_menu;
var vitesse_mvt_menu;
var timeout_en_cours_menu;
var taille_ouverture_menu = 40;

function init_menu() {
	var largeur_max = document.getElementById('ul_menu').offsetWidth +2; //+1 parce que sinon IE nous les brise.
	document.getElementById('nav').style.width = largeur_max + 'px';
	document.getElementById('fond_defaut').style.width = largeur_max + 'px';
	var decal_left = document.getElementById('nav').offsetLeft + "px";
	document.getElementById('fond_defaut').style.left = decal_left;
	var list_ul = document.getElementsByTagName("ul");
	for(var i=0; i < list_ul.length; i++)
		if(list_ul[i].className == "sous_menu")
			list_ul[i].style.left = decal_left;
	taille_ouverture_menu = (580 - largeur_max+2)/2 + 40;
}
		
/** On passe d'abord par cette micro fonction qui met à jour les variables globales, utilisée ensuite
dans la fonction récursive largeur_menu(). Parce que la fonction qui s'auto-appelle avec le même argument, il aime pas.
Attention, cette fonction prend maintenant en argument un nombre, et pas une chaine se terminant par "px".*/
function set_largeur_menu(parametre_largeur){
	clearTimeout(timeout_en_cours_menu); //Si un mouvement est déjà initié, on l'arrête proprement.
	new_largeur_menu = parametre_largeur;
	vitesse_mvt_menu = 20;
	largeur_menu();
}
		
/** Cette fonction est donc récursive, elle s'auto-appelle pour faire avancer progressivement la largeur des bords, 
jusqu'à la bonne taille.*/
function largeur_menu(){
	var largeur_manquante = new_largeur_menu - document.getElementById('pann1').offsetWidth;
	//On y est presque, on finit donc d'ajuster, puis on arrête la fonction récursive.
	if(largeur_manquante <= vitesse_mvt_menu && largeur_manquante >= -vitesse_mvt_menu) { 
		document.getElementById('pann1').style.width = new_largeur_menu + 'px';
		document.getElementById('pann2').style.width = new_largeur_menu + 'px';
		return;
	}
	var ajout_pixels = vitesse_mvt_menu; //La valeur qu'on va rajouter de chaque côté (négative en cas de fermeture)
	if(largeur_manquante < 0)
		ajout_pixels = -vitesse_mvt_menu;
			
		document.getElementById('pann1').style.width = document.getElementById('pann1').offsetWidth + ajout_pixels + 'px';
		document.getElementById('pann2').style.width = document.getElementById('pann2').offsetWidth + ajout_pixels + 'px';
		vitesse_mvt_menu += 2; //Permet de faire un petit effet d'acceleration.
		timeout_en_cours_menu = setTimeout("largeur_menu();",25);
}